1. Technical Field
The present invention relates to the displaying of documents upon a graphic user interface, more particularly, to a method of synchronizing multiple views of multiple displayed documents.
2. Description of the Related Art
A topic of interest is graphic user interfaces that allow users to interact with a computer via one or more windows displayed upon a monitor or screen. The ability to concurrently display or have readily available a multiplicity of windows continues to increase in popularity. A window is a visual area of a graphic user interface, and is typically represented as two-dimensional rectangular shapes. Interaction with a window is accomplished via a user input device, such as a mouse or trackball that controls a graphically displayed pointer or cursor upon the display, a keyboard, and/or a touch screen.
A workspace window is one in which documents may be displayed and/or accessed. For example, a drawing document associated with drawing or graphics application may be accessed in a workspace window. Multiple workspace windows may be concurrently displayed upon a given monitor. Operating systems commonly support multiple concurrent instances of workspace windows associated with the same or different applications. A window manager is computer software that controls the placement, appearance and interaction with windows displayed in a graphic user interface. The operating system and each application would have their own window managers.
An active window is one which is the currently focused window or otherwise currently selected to receive input. At any given time, only a single workspace window may be “active.” Different window managers indicate the currently-active window in different ways and allow the user to switch between windows in different ways.
For example, using the mouse to maneuver a mouse cursor over a portion of a window while clicking a mouse button may cause that window to become active. Some window managers may make the window under the mouse cursor active without the need to click the mouse button. Window managers often provide a way to select the active window using the keyboard as an alternative to the mouse. Pressing the appropriate key combination typically cycles through all visible windows in some order, though other actions are possible. An active window may be indicated by having a different coloured or highlighted title bar or window frame. Many window managers provide a region of the screen containing some kind of visual control (often a button) for each window displayed on the screen. Each button typically contains the title of the window and may also contain a corresponding icon. This area of the screen generally provides some kind of visual indication of which window is active. For example, the active window's button may appear “pushed in.” It is also usually possible to switch the active window by clicking on an appropriate button.
Typically, workspace windows may be moved or translated about the monitor. Such workspace windows may be overlapping or non-overlapping. Moreover, active windows may not always lie in front of all other windows on the display screen.
Within a given workspace window, there may be multiple “child windows.” An instance of a graphics application may be launched which displays a workspace window. Within such workspace window (a “parent window”) there may be displayed multiple documents each in its own child window. Each of the child windows may represent different documents, different portions of data associated with a common document (such as levels or layers of a drawing document), multiple instances of a same document, or multiple versions of the same document. A parent window would define a window frame and access to a variety of controls, such as toolbars, buttons, icons, menus, and the like. Such controls are applied to the various child windows within the associated parent window.
Child windows may be displayed in windows of various sizing relative to their associated parent window and/or other child windows. For example, child windows may be sized to fit the entirety of their common parent window. In such a case, the child windows would be overlapping. Visual indicators may be provided to represent the overlapped child window. For example, each child window may have a tab extending from its window frame with each child window's tab being offset from other tabs. Regardless of the order of overlap of the child windows, a visual indication would be displayed to provide user information as to the number, identity and/or order of the overlapped child windows. This may be referred to as a “tabbed view.” This enables the child windows to be sized as large as possible (i.e., the extent of their parent window). Child windows may also be displayed in a partially overlapping manner. For example, each newly launched child window may be initially displayed with an offset (vertical and horizontal). This has the advantage of allowing a portion of each child window to be simultaneously displayed to provide the user with some information as to the contents of each of the child windows while also attempting to size the child windows as large as possible.
Another approach to displaying child windows is to launch non-overlapping windows. The maximum relative sizing of the child windows in this approach becomes significantly reduced in comparison to overlapping child windows. Child windows displayed in this approach may be referred to as a “window pane view,” as this is similar to appearance of glass window panes.
The functionality of launching child windows or split views of a document or documents is particularly beneficial for viewing large format drawings. This is because a user may often need to view a drawing with a large zoom factor and the split feature allows several different parts of a drawing to be readily accessible.
Positional offset and scale are major parameters when displaying a document, such as a drawing document. It should also be noted that page number and rotation may also be significant as well. It is important to make a distinction between a document coordinate system and a screen or window coordinate system. A document coordinate system represents the physical size of the document independent of how the document is displayed in a window. The fundamental unit corresponds to a real measurement, such as inches or centimeters. The physical size of the documents would be defined by length and width dimensions or by coordinates of its four vertex points. The screen coordinate system represents how the document is displayed and its fundamental unit is associated with the screen display, such as pixels.
The positional offset parameter relates to the coordinate system of the displayed document in comparison to that of the actual document. The origin point for an actual document is typically initialized as being the upper left corner having zero X (horizontal) and zero Y (vertical) coordinates (e.g., (0, 0)). The origin of the display may be the upper left corner of the display. The origin point for display of the document may not be the same as that of the actual document. For example, the document may be displayed such that the upper left corner of the document (the origin of the actual document) is not even displayed. The display of the document may be changed by panning the view of the document. For example, the view of the document may be panned horizontally to the right with the origin point of the actual document translating to the left relative to the display. The X coordinate of the offset would become increasingly negative as the display of the document is further panned to the right.
The scale parameter pertains to the zoom factor of the displayed document. Typically a one hundred percent scale factor (100% or 1:1) results in a document being displayed on the screen that is generally near the actual sizing of the document. An increase in the scale such as 2:1 would result in the displayed document appearing twice the actual size (i.e., zoomed in). The zoom and offset parameters can be used to convert points between the drawing coordinate system and the screen coordinate system. The scale parameter may take into account the application level and/or the operating system level in relation to the screen display density.
In view of the ever increasing interest and utilization in the viewing and displaying of a document or multiple documents, there is a need in the art for an improved system for interacting with multiple displayed documents.